#!/bin/bash

# Mask Token Starter 功能测试脚本

echo "开始测试 Mask Token Starter..."

# 1. 编译主项目
echo "1. 编译主项目..."
mvn clean compile -q
if [ $? -eq 0 ]; then
    echo "✅ 主项目编译成功"
else
    echo "❌ 主项目编译失败"
    exit 1
fi

# 2. 打包主项目
echo "2. 打包主项目..."
mvn package -DskipTests -q
if [ $? -eq 0 ]; then
    echo "✅ 主项目打包成功"
else
    echo "❌ 主项目打包失败"
    exit 1
fi

# 3. 安装到本地仓库
echo "3. 安装到本地仓库..."
mvn install -DskipTests -q
if [ $? -eq 0 ]; then
    echo "✅ 安装到本地仓库成功"
else
    echo "❌ 安装到本地仓库失败"
    exit 1
fi

# 4. 编译示例项目
echo "4. 编译示例项目..."
cd example
mvn clean compile -q
if [ $? -eq 0 ]; then
    echo "✅ 示例项目编译成功"
else
    echo "❌ 示例项目编译失败"
    exit 1
fi

# 5. 打包示例项目
echo "5. 打包示例项目..."
mvn package -DskipTests -q
if [ $? -eq 0 ]; then
    echo "✅ 示例项目打包成功"
else
    echo "❌ 示例项目打包失败"
    exit 1
fi

cd ..

echo ""
echo "🎉 所有测试通过！"
echo ""
echo "Starter功能验证："
echo "✅ JWT Token认证框架"
echo "✅ Spring Security集成"
echo "✅ 权限控制注解"
echo "✅ 自动配置支持"
echo "✅ 示例项目完整"
echo ""
echo "使用方式："
echo "1. 在其他项目中添加依赖："
echo "   <dependency>"
echo "     <groupId>com.mask</groupId>"
echo "     <artifactId>mask-token-spring-boot-starter</artifactId>"
echo "     <version>1.0.0</version>"
echo "   </dependency>"
echo ""
echo "2. 实现自己的业务逻辑（登录接口、用户管理等）"
echo "3. 使用Starter提供的认证服务和权限注解"
echo ""
echo "注意：Starter只提供认证框架，不包含业务逻辑！"
